home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1997 February
/
EnigmA AMIGA RUN 15 (1997)(G.R. Edizioni)(IT)[!][issue 1997-02][PLANET CD V].iso
/
enigma
/
earcd
/
utility
/
utilhard
/
lcdaem18.lha
/
LCDaemon
/
Programmer
/
lcd.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-10-13
|
3KB
|
144 lines
static char *lcdportname="«« LCD rendezvous »»";
static char *lcdrexxname="LCDAEMON";
struct lcdparams {
long width;
long virtualwidth;
long height;
long maxqueuetime;
};
struct lcdqueuedtext {
STRPTR themessage;
};
struct lcdirect {
ULONG Command;
ULONG Data;
};
struct lcdmessage {
struct Message lcd_Message;
long lcd_Code;
BYTE lcd_Priority;
BYTE lcd_pad1[3];
long lcd_Error;
long lcd_Ticks;
APTR lcd_Data;
};
/* LCDscreen for semi-direct screen control and programmable character support.
**
** DMN : supplied by daemon , read-only to user.
** USR : supplied by user
** PRI : private. Don't even think about what this this value might do.
*/
#define LCDSCREEN_MINVERSION 16
struct lcdscreen {
/*
** Version to identify future versions.
** Check for your minimum-version before filling out new structure members
** DMN
*/
UWORD version;
UWORD reserved;
/*
** Number of characters per screen line. This may be wider than
** the actual number of characters per line !
** DMN
*/
UWORD bufferwidth;
/*
** Number of lines in the screen buffer.
** DMN
*/
UWORD bufferheight;
/*
** Pointer to private data. Don't touch this field!
** PRI
*/
APTR private;
/*
** Pointer to screen buffer. This gets allocated by LCDaemon, but you
** must fill it with sensible data.
** DMN
*/
char *screenbuffer;
/*
** Flags informing what to update.
** USR
*/
ULONG ud_flags;
/*
** Number of bytes per character
** USR
*/
UWORD customcharheight;
/*
** Number of characters defined
** USR
*/
UWORD customcharnum;
/*
** Pointer to the array of programmable characters. You must
** initialize this pointer to your custom character data.
** USR
*/
UBYTE *customchardefs;
};
#define LCDUPD_DISPLAY 1
#define LCDUPD_CUSTOMCHARNUM 2
#define LCDUPD_CUSTOMCHARDEFS 4
#define LCDPRI_MEMDISPLAY -64
#define LCDPRI_APPLICATION 0
#define LCDPRI_ALERT 64
#define LCDPRI_VITAL 127
#define LCDPRI_REMARK -32
#define LCDPRI_NEVER -128
#define LCDMSG_NONE 0
#define LCDMSG_ASKPARAMS 1
#define LCDMSG_QUEUE 2
#define LCDMSG_ALLOCATELCD 3
#define LCDMSG_FREELCD 4
#define LCDMSG_LCDIRECT 5
#define LCDMSG_ALLOCATEHANDLE 6
#define LCDMSG_FREEHANDLE 7
#define LCDMSG_UPDATEHANDLE 8
#define LCDERR_NONE 0
#define LCDERR_UNKNOWN 1
#define LCDERR_NOMEM 2
#define LCDERR_TOOBUSY 3
#define LCDERR_YOURFAULT 4
#define LCDCMD_END 0
#define LCDCMD_CLS 1
#define LCDCMD_HOME 2
#define LCDCMD_CURSDIR 3
#define LCDCMD_DISPLAY 4
#define LCDCMD_CURSOR 5
#define LCDCMD_BLINK 6
#define LCDCMD_SHIFTD 7
#define LCDCMD_SHIFTC 8
#define LCDCMD_GOTOXY 9
#define LCDCMD_GETXY 10
#define LCDCMD_DATA 11
#define LCDRXE_IMGONE 100
#define ON TRUE
#define OFF FALSE
#define YES TRUE
#define NO FALSE
#define DATA TRUE
#define REG FALSE
#define EIGHTBITS TRUE
#define FOURBITS FALSE
#define TWOLINES TRUE
#define ONELINE FALSE
#define TENDOTS TRUE
#define SEVENDOTS FALSE
#define RIGHT TRUE
#define LEFT FALSE
#define DISPLAY TRUE
#define CURSOR FALSE